#include "odbc/details/buffer_concept.hpp"
#include "odbc/details/buffer.hpp"
#include <boost/test/auto_unit_test.hpp>

namespace
{
	using namespace odbc::details;

BOOST_AUTO_TEST_CASE( test_buffer_concepts)
{
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< char> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< unsigned char> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< signed char> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< wchar_t> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< short> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< unsigned short> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< signed short> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< int> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< unsigned int> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< signed int> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< long> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< unsigned long> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< signed long> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< float> >));
	BOOST_CONCEPT_ASSERT( (buffer_concept< buffer< double> >));
}

} // namespace
